Mobile applications, websites, and web-based applications (hereinafter referred to generally as an “app” or “apps”) are a global marketplace. For example, an app developed in San Francisco or Tokyo can attain popularity in hundreds of country-level app stores across the globe. However to effectively be used by various marketplaces, which may have different expectations for application interfaces and may have users speaking different languages, an app should be localized for the users in each particular marketplace. App localization is therefore increasingly important.
Localization may include translating the language used in an app to the correct language for a particular geographic locality as well as providing the appropriate content, imagery, user experience, and/or cultural inferences, etc. For example, an app developed to assist parents in finding childcare services in Europe may be translated into versions of English, French and Italian, but may also be customized for content pulled from England, France, and Italy. This may include, among other things, images of local children, content from local nurseries, information on government regulations specific to each location, instructions optimized for other cultural nuances relating to how parents balance their workday with the needs of their children, etc. Straightforward word-for-word translation typically fails to account for these differences.
Currently, localizing native applications is a process that is relatively manual and time consuming. This is particularly true for mobile device applications, such as those executing on iOS and Android systems, HTML mobile apps, Windows Mobile OS, Linux OS, and others. In general, to achieve an appropriate level of customization, a different build (or version) of the app is generated for each locality and language. The associated costs in terms of money and time to market mean that most developers cannot market their apps to a global audience without significant expenditures. And even developers able to afford the cost of localization can find the conventional process both unwieldy and time intensive.
For purposes of explanation, one example of a prior art process for localizing an app is shown in FIG. 1, which depicts a block diagram of an example prior art process for localizing an app. In this process, a developer must plan for localization of the application during development. Every line of code that contains localizable text is placed within special tags for later identification and modification. In the illustrated embodiment, prior art process 100 begins at step 101 where the code strings are localized to the particular target language. The strings are then exported at step 102. Localizing and exporting the localizable strings typically takes 1-2 weeks. Then, the localizable strings are translated (step 103), which can typically range anywhere from 3-6 weeks depending on the selected translation service and other factors. Images, logos and other art may also be localized or replaced using the same or a similar workflow.
After translation, process 100 continues at step 104 where the translated code is imported and tested. This process can take an additional 1-2 weeks to complete. And then the change management process is performed at step 105. Change management refers to the identification and correction of an error or other problem in the translated application. For example, if a development team finds that the Italian users of the app are not generating as much revenue as the English users, for example, and the team is able to trace this problem back to specific language in the Italian version of the app, then the developer may need to update the code. In some cases, updating the code itself may be time-consuming, as the application may need to be resubmitted to a third party for approval to be placed in an app store. In addition, the developer may then send a notification to users asking them to download the updated app once again. This process can take up to a month or more. Moreover, in many cases only a fraction of the target users will take the time to update their application.